package com.yanqu.road.entity.curio;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;

import java.util.List;


@FieldTypeAnnotation(tableName = "t_u_curio_item", desc = "藏宝-藏品")
public class UserCurioItemData extends DataObject {

    @FieldTypeAnnotation(desc = "用户ID", select = true, update = true)
    private long userId;

    @FieldTypeAnnotation(desc = "藏宝id", update = true)
    private int itemId;

    @FieldTypeAnnotation(desc = "品质")
    private int quality;

    @FieldTypeAnnotation(desc = "等级")
    private int lv;

    @FieldTypeAnnotation(desc = "星级")
    private int starLv;

    @FieldTypeAnnotation(desc = "评分")
    private long score;

    @FieldTypeAnnotation(desc = "评分变更时间")
    private int scoreUpdateTime;

    @FieldTypeAnnotation(desc = "特权信息")
    private List<CurioPrivilege> privilegeList;

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        if(this.userId != userId) {
            this.userId = userId;
            setUpdateOption();
        }
    }

    public int getItemId() {
        return itemId;
    }

    public void setItemId(int itemId) {
        if(this.itemId != itemId) {
            this.itemId = itemId;
            setUpdateOption();
        }
    }

    public int getQuality() {
        return quality;
    }

    public void setQuality(int quality) {
        if(this.quality != quality) {
            this.quality = quality;
            setUpdateOption();
        }
    }

    public int getLv() {
        return lv;
    }

    public void setLv(int lv) {
        if(this.lv != lv) {
            this.lv = lv;
            setUpdateOption();
        }
    }

    public int getStarLv() {
        return starLv;
    }

    public void setStarLv(int starLv) {
        if(this.starLv != starLv) {
            this.starLv = starLv;
            setUpdateOption();
        }
    }

    public long getScore() {
        return score;
    }

    public void setScore(long score) {
        if(this.score != score) {
            this.score = score;
            setUpdateOption();
        }
    }

    public int getScoreUpdateTime() {
        return scoreUpdateTime;
    }

    public void setScoreUpdateTime(int scoreUpdateTime) {
        if(this.scoreUpdateTime != scoreUpdateTime) {
            this.scoreUpdateTime = scoreUpdateTime;
            setUpdateOption();
        }
    }

    public List<CurioPrivilege> getPrivilegeList() {
        return privilegeList;
    }

    public void setPrivilegeList(List<CurioPrivilege> privilegeList) {
        this.privilegeList = privilegeList;
        setUpdateOption();
    }
}
